package br.com.processo.servico;

import java.io.Serializable;
import java.util.List;

import javax.inject.Inject;

import br.com.processo.modelo.Parecer;
import br.com.processo.modelo.Processo;
import br.com.processo.persistencia.ProcessoDAO;
import br.com.processo.persistencia.dao.ParecerDAO;
import br.com.processo.util.RequerTransacao;

public class ProcessoService implements Serializable {

	private static final long serialVersionUID = 2671517160130072507L;

	@Inject
	private ProcessoDAO processoDao;

	@Inject
	private ParecerDAO parecerDao;
	
	
	@RequerTransacao
	public void salvarProcesso(Processo processo) {
		processoDao.insereObjeto(processo);
	}

	public List<Processo> listarProcessos() {
		return processoDao.listaObjetos();
	}
	
	@RequerTransacao
	public void deletarProcesso(Processo processo) {
		this.processoDao.removeObjeto(processo.getId());
	}

	public List<Processo> listarProcessosPorSetor(Long idSetor) {
		return this.processoDao.listarProcessosPorSetor(idSetor);
	}

	@RequerTransacao
	public void salvarParecer(Parecer parecerProcesso) {
		this.parecerDao.insereObjeto(parecerProcesso);
		
	}

	public Processo atualizaProcesso(Long id) {
		return processoDao.localizaObjeto(id);
	}

	

}
